'''
使用目的：免费获取高匿IP

使用方法
1、导入IP池模块 form ip_proxies import xilaproxies
2、使用选择IP方法 form ip_proxies import xilaproxies
3、使用一个变量接收第二步的返回值

例：
form ip_proxies import xilaproxies
ip = form ip_proxies import xilaproxies
print（ip）

输出内容：
{'http': '124.94.253.216:9999'}

按以上两步操作即可得到一个字典格式的IP
'''
import requests
from lxml import etree
import random
url = 'http://www.xiladaili.com/gaoni/'
head = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36'}
response = requests.get(url,headers=head)
html = etree.HTML(response.text)
ip_list = html.xpath('/html/body/div/div[3]/div[2]/table/tbody/tr/td[1]/text()')
ip_type = html.xpath('/html/body/div/div[3]/div[2]/table/tbody/tr/td[2]/text()')
ip_type_list = []
for type in ip_type:
    if type == 'HTTPS代理':
        type = 'https'
        ip_type_list.append(type)
    elif type == 'HTTP代理':
        type = 'http'
        ip_type_list.append(type)
    else:
        type = 'http'
        ip_type_list.append(type)

def ip_choice():
    ip_choice_list = []
    n = 0
    for value in ip_list:

        ip_dict1 = {ip_type_list[n]: value}
        n += 1
        ip_choice_list.append(ip_dict1)
    return ip_choice_list


def ip_choice_use():
    ip_choice_list = ip_choice()

    ip = ip_choice_list[random.randint(0,len(ip_choice_list)-1)]

    return ip


print(ip_choice_use())





